package com.dao;

import com.domain.Discuss;
import com.domain.Label;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository("discussDao")
public interface DiscussDao {
    
     List<Discuss> selectDiscussByMemberId(Integer member_id);

     List<Discuss> selectDiscussByTitle(String title);

     Discuss selectDiscussByTitleAndMemberId(@Param("title") String title, @Param("member_id") Integer member_id);
    /*********************************************************************************/
    int addDiscuss(Discuss discuss);

    int findDiscussTotal(int space_id);

    List<Discuss> findAllDiscuss(@Param("from") int page, @Param("pageSize") int pageSize,@Param("space_id")Integer space_id);

    List<Discuss> findAllEliteDiscuss(Integer space_id);

    List<Discuss> findAllCollectDiscuss(Integer space_id);

    List<Discuss> findDiscussBySpaceId(int space_id);

    Discuss findDiscussById(@Param("id") int id);

    Discuss findDiscussByIdAndSpaceId(@Param("id") int id,@Param("space_id") int space_id);

    int deleteDiscussById(int id);

    Discuss findLastId(Integer space_id);

    int updateDiscussById(Discuss discuss);

    List<Discuss> findDiscussByParam(Discuss discus);

    List<Discuss> descCreateDate(Integer space_id);

    List<Discuss> descUpdateDate(Integer space_id);

    List<Label> selectLabelByDiscussId(int id);

    List<Discuss> descCreateDateLimitPageSize(@Param("space_id") int space_id,@Param("pageSize") int pageSize);

    int deleteDiscussBySpaceId(int space_id);

}
